查看原文
其他

WWW 23 | Facebook Marketplace的意图理解:用双塔模型处理结构化的产品目录

何允中 PaperWeekly
2024-08-22

©PaperWeekly 原创 · 作者 | 何允中
单位 | Meta
研究方向 | Information Retrieval




摘要


本文介绍了 Facebook Marketplace 团队提出的 HierCat 构架,以解决电商搜索中的意图理解难题。HierCat 利用线上产品交互挖掘弱监督数据,并通过基于 Transformer 的双塔模型以及概率重整化算法,帮助模型更好地泛化。该方案在线上 A/B 测试中显著提高了 Facebook Marketplace 用户参与度和搜索结果的 NDCG 指标,成为系统中的核心组件。




引言


意图理解系统在电商搜索中扮演着重要角色,为召回和排序模型提供信号,并构成产品体验的核心部分。然而,像 Facebook Marketplace 这样的平台面临着一系列意图理解的挑战,包括模糊意图、训练数据获取困难和在线推断延迟等。本文将介绍 HierCat 构架,它通过充分利用线上产品交互数据和双塔模型来解决这些问题。




难题及挑战


  1. 模糊意图:电商搜索中经常出现探索性查询,例如“我附近的二手家具”,难以简单归类到具体的产品目录,如“沙发”或“椅子”。

  2. 训练数据:不同电商平台的产品目录不同,且动态变化频繁。传统手工标注无法获取足够的训练数据,尤其涉及全球多语种支持的平台如 Facebook Marketplace。

  3. 在线推断开销:Facebook Marketplace 每天处理上亿级别的查询,复杂模型带来了巨大推断开销和产品延迟。




解决方案


4.1 使用完整的层级产品目录


使用完整的层级产品目录:与传统意图理解模型不同,HierCat 不仅预测产品目录的叶节点(如“沙发”、“椅子”),还预测产品的大类(如“家具”)以及整个分类树上的路径。这样能更好地捕获模糊意图。

4.2 通过线上交互挖掘训练数据


HierCat 直接从用户的查询和产品交互中获取训练数据。例如,当用户搜索“苹果手机壳”并购买了一件“手机壳”的商品,认为<“苹果手机”,“电子产品/智能手机/手机配件/手机壳”>是该查询的分类树路径。这种方法能有效获取训练数据并预测整条路径。


注意此处产品的分类由商家提供的信息(或者 Facebook Marketplace 的产品分类算法)获得。与意图理解不同,产品的分类永远在叶节点上,HierCat 的一个亮点在于提供了从叶节点的训练数据得到可以预测整条路径的建模方案。


4.3 基于Transformer的双塔模型架构


HierCat 首先直接对分类树上的节点进行建模。由于训练数据都在叶节点,为了泛化能力,采用双塔召回模型而非传统的分类模型。双塔模型通过对分类树路径名称的编码来实现对非叶节点以及新增节的 zero-shot 泛化能力。对于查询端,HierCat 使用了和团队前作 Que2Search 一样的混合粒度编码。

与双塔召回模型不同,HierCat 采用的是 full softmax 训练而非 batch negative,作者表示发现 full softmax 比起 batch negative 略强。

4.4 预训练任务


为了平衡线上推断开销和延迟,HierCat 使用了来自 Meta 的 2 层 XLM 预训练模型。除此之外该团队发现通过商品召回任务进一步预训练查询端模型可以获得更细致的 embedding 表征,并提高准确度。

▲ 商品召回任务带来的效果提升


4.5 重整化概率分布


HierCat 团队发现尽管在一些探索性强的搜索场景中,训练数据会有较大噪音,但是这些噪音在分类树的层级结构下扔存在一定规律。比如当用户搜索“苹果手机”,可能会同时购买苹果手机和手机配件,导致出现不同的标签,但是这些路径标签的父节点仍然会保留部分一致性(“电子产品/手机/手机配件”,“电子产品/手机/智能手机”)。基于这个观测,团队提出了如下概率重整化算法。

该步骤通过自叶节点向父节点的概率传播保证了 P(电子产品/手机)是其子节点 (P(电子产品/手机/智能手机),P(电子产品/手机/手机配件))之和。在推断阶段,通过自上而下的 beam search 来找到最佳路径。


4.6 线上性能优化


除了常规的缓存之外,HierCat 通过预处理所有的标签 embedding 并存储在 PyTorch 的 tensor 当中,避免了反复计算标签的 embedding。在推断阶段只需计算搜索关键词的 embedding 以及 embedding 相似度即可。




线下&线上指标

消融实验表面了 HierCat 方案显著强于常用的 FastText multi-label 方案,并且双塔模型相对于同样 transformer 架构的分类模型效果也有所提高。在所有场景之下,加上概率重整化的步骤都可以显著提高准确率。

除此之外,团队通过对于意图层级的分布分析发现 HierCat 起到了对训练数据降噪的效果。

HierCat 的线上 A/B 测试表示该系统通过对 retrieval boost 的提升显著增加了 Facebook Marketplace 的用户参与度以及搜索结果的 NDCG 指标。该系统目前已经是 Facebook Marketplace 系统中的核心组件,为上下游各种模型提供意图理解的信号。



更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


·
·

继续滑动看下一个
PaperWeekly
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存